1. Field of the Invention
The present invention relates to performance of complex arithmetic operations in a computing system. In particular, the present invention relates to the minimization of clock cycles required to perform arithmetic operations.
2. Background of the Invention
Complex arithmetic units such as dividers, multipliers and adders sometimes process the same sets of operands repeatedly. In the past, each time a familiar set of operands was received to be processed, the result was recalculated by the arithmetic unit, inefficiently wasting the unit's time and resources.
Because of the redundant nature of computation, certain optimizing shortcuts can be enacted to increase the speed of the process. The technique of memo-ization, or tabulation, takes advantage of the redundant nature of computation and allows a computer program to run faster by trading execution time for increased memory storage. Precomputed results of functions are stored in a table. A lookup to the table then replaces calls to the unit to execute the function.
However, a lookup table containing all variations of operands and their corresponding results would require a memory prohibitively large.